امروزه با پیشرفتهای چشمگیر در صنعت الکترونیک و نیاز روزافزون به تکنولوژیهای کنترلی، کاربرد و اهمیت سیستمهای تعبیهشده نیز بیشتر شده است تا جاییکه سیستمهای تعبیهشده از مهمترین زمینههای پژوهشی در سالهای اخیر محسوب میشوند. در اکثر مواقع، عملیات در یک سیستم تعبیهشده باید در زمان کوتاه و مناسبی اجرا شوند، از اینرو عموماً اکثر سیستمهای تعبیهشده، بیدرنگ میباشند. تجهیزات نظامی و صنعتی، تلفن همراه و کاربردهای تجاری همچون دستگاههای خودپرداز و سیستمهای هوشمند، نمونههایی از سیستمهای تعبیهشده بیدرنگ میباشند. علاوه بر بیدرنگ بودن، مصرف انرژی مناسب نیز یکی دیگر از مشخصههای اصلی سیستمهای تعبیهشده میباشد که یک مسئله اساسی پیش روی طراحان سیستمهای دیجیتال محسوب میشود. یکی از مسائل مهم در سیستمهای چند هستهای زمانبندی وظیفهها و اجرای آنها توسط هستههای موجود است. برخلاف سیستمهای تک هستهای که مسئله زمانبندی فقط در مورد زمان میباشد، در سیستمهای چند هستهای این مسئله یک مسئله دو بعدی است و علاوه بر زمان ، مکان و فضای اجرای هستهها را هم شامل میشود، یعنی تصمیمگیری میشود که یک وظیفه چه زمانی و توسط کدام هسته اجرا شود و هدف آن استفاده بهینه از توان پردازشی موجود، افزایش بازده و حداقل کردن زمان پاسخ سیستم است. در این پایان نامه ما بروی چهار مشکل اصلی در این نوع سیستم ها تمرکز میکنیم: مصرف انرژی ، بهرهوری سیستم، کارایی سیستم، زمان پاسخ سیستم. یکی از مهم ترین مسائلی که روی تمامی این چهار مشکل تاثیر مستقیم دارد نحوه توزیع بار بین منابع موجود است که در اینجا منظور از منابع، هستههای یک پردازنده چند هستهای میباشد. یک توزیع ناکارامد بار روی هستهها باعث مصرف انرژی بیشتر و پایین آمدن بهرهوری و کارایی کل سیستم میشود. بیشتر روشهایی که تاکنون ارائه شدهاند، بدون توجه به نوع وظیفه، آنها را بین پردازندهها توزیع میکنند و بیشتر به تمرکز روی روشهای تنظیم فرکانس و ولتاژ هر هسته بسنده میکنند. الگوریتم پیشنهادی ما در این پروژه، یک الگوریتم سه سطحی میباشد که در سطح اول یک روش جدید برای تفکیک وظایف تناوبی از وظایف غیرتناوبی متناسب با تعداد هستههای موجود ارائه میشود. سطح دوم از دو قسمت تشکیل میشود. در قسمت اول یک الگوریتم جدید برای توزیع وظایف تناوبی بین هستههای مربوط به آن ها که در سطح اول الگوریتم مشخص شده، ارائه میشود و در قسمت دوم الگوریتم توزیع وظایف غیرتناوبی بین هستههای مشخص شده برای آنها ، مطرح میشود. در سطح سوم الگوریتم جدیدی برای تنظیم فرکانس و ولتاژ سررسید محور بیان میکنیم. نتایج شبیهسازی نشان میدهد که الگوریتم پیشنهادی ما در مقایسه با الگوریتمهای موجود، در حین اینکه باعث کاهش مصرف انرژی کل سیستم میشود، بهرهوری و کارایی سیستم و همچنین زمان پاسخ وظایف غیر تناوبی را بهبود بخشیده است و با توجه به تامین سررسیدهای زمانی بیشتر برای وظایف تناوبی وکاهش زمان پاسخ وظایف غیرتناوبی با حفظ میزان کارایی و پایین بودن نسبی مرتبه زمانی اجرای الگوریتم، کیفیت سیستم افزایش پیدا خواهد کرد.
سیستمهای تعبیهشده[1] یکی از بخشهای اصلی زندگی ما هستند و نقش مهمی در آسان نمودن زندگی مدرن ما ایفا میکنند. از تلفنهای هوشمند[2] که امکانات متنوعی را در اختیار کاربران قرارمیدهند گرفته تا لوازم منزل، آسانسورها، ترمز در یک خودرو و سیستم های هدایت موشک همگی نمونه هایی از سیستم های تعبیهشده هستند.
امروزه بیش از 98 درصد تمام پردازندههای تولیدشده در جهان در سیستمهای تعبیهشده استفاده شده است. این پردازشگرهای تعبیهشده در نگاه اول کاربر، قابل مشاهده نیستند؛ در هرصورت عملکرد صحیح آنها برای درست کار کردن هرسیستمی ضروری است. در اکثر مواقع عملیات در یک سیستم تعبیهشده باید در زمان کوتاه و مناسبی اجرا شوند. از این رو اکثر سیستمهای تعبیهشده، بیدرنگ[3] میباشند، بنابراین زمان پاسخ[4] در سیستم های تعبیهشده بیدرنگ از اهمیت بالایی برخوردار است. علاوه بر بیدرنگ بودن و اهمیت زمان پاسخ، مصرف انرژی کم نیز یکی از مهمترین ویژگیهای یک سیستم تعبیهشده می باشد.از دیگر ویژگیهای یک سیستم تعبیهشده می توان به تولید گرمای پایین و هزینه کم اشاره کرد. مبحث انرژی و توان مصرفی مانع از افزایش سرعت مخصوصا در سیستمهای چندهستهای[5] میشود. سیستمهای بیدرنگ می توانند بهره خوبی از پردازندههای چندهستهای ببرند، یعنی وظیفههای[6] مستقل میتوانند به طور همزمان اجرا شوند و خیلی سریع باهم بین هستهها ارتباط برقرار کنند.